package com.ruoyi.house_sale.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 办理进度对象 WorkProcess
 *
 * @author ruoyi
 * @date 2022-04-08
 */
public class WorkProcess extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 进度编号 */
    private Long processid;

    /** 购买房产编号（关联BuyHourse表主键） */
    @Excel(name = "购买房产编号", readConverterExp = "关=联BuyHourse表主键")
    private Long buyid;

    /** 客户编号（关联客户资料表） */
    @Excel(name = "客户编号", readConverterExp = "关=联客户资料表")
    private Long custid;

    /** 房产编号（关联房产资料表） */
    @Excel(name = "房产编号", readConverterExp = "关=联房产资料表")
    private Long hourseid;

    /** 流程名称 */
    @Excel(name = "流程名称")
    private String flowname;

    /** 关键节点（签约,按揭到款,房款已清,入住,已办房产证等） */
    @Excel(name = "关键节点", readConverterExp = "签=约,按揭到款,房款已清,入住,已办房产证等")
    private String flownode;

    /** 应该完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "应该完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date starttime;

    /** 实际完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishtime;

    /** 应交金额 */
    @Excel(name = "应交金额")
    private BigDecimal planmoney;

    /** 实交金额 */
    @Excel(name = "实交金额")
    private BigDecimal factmoney;

    /** 环节序号 */
    @Excel(name = "环节序号")
    private Long orderid;

    /** 未完成	完成状态（未完成，已完成） */
    @Excel(name = "未完成	完成状态", readConverterExp = "未=完成，已完成")
    private String status;

    /** 操作人（登录session值） */
    @Excel(name = "操作人", readConverterExp = "登=录session值")
    private String userid;

    /** 操作时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date oprtime;

    public void setProcessid(Long processid)
    {
        this.processid = processid;
    }

    public Long getProcessid()
    {
        return processid;
    }
    public void setBuyid(Long buyid)
    {
        this.buyid = buyid;
    }

    public Long getBuyid()
    {
        return buyid;
    }
    public void setCustid(Long custid)
    {
        this.custid = custid;
    }

    public Long getCustid()
    {
        return custid;
    }
    public void setHourseid(Long hourseid)
    {
        this.hourseid = hourseid;
    }

    public Long getHourseid()
    {
        return hourseid;
    }
    public void setFlowname(String flowname)
    {
        this.flowname = flowname;
    }

    public String getFlowname()
    {
        return flowname;
    }
    public void setFlownode(String flownode)
    {
        this.flownode = flownode;
    }

    public String getFlownode()
    {
        return flownode;
    }
    public void setStarttime(Date starttime)
    {
        this.starttime = starttime;
    }

    public Date getStarttime()
    {
        return starttime;
    }
    public void setFinishtime(Date finishtime)
    {
        this.finishtime = finishtime;
    }

    public Date getFinishtime()
    {
        return finishtime;
    }
    public void setPlanmoney(BigDecimal planmoney)
    {
        this.planmoney = planmoney;
    }

    public BigDecimal getPlanmoney()
    {
        return planmoney;
    }
    public void setFactmoney(BigDecimal factmoney)
    {
        this.factmoney = factmoney;
    }

    public BigDecimal getFactmoney()
    {
        return factmoney;
    }
    public void setOrderid(Long orderid)
    {
        this.orderid = orderid;
    }

    public Long getOrderid()
    {
        return orderid;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setUserid(String userid)
    {
        this.userid = userid;
    }

    public String getUserid()
    {
        return userid;
    }
    public void setOprtime(Date oprtime)
    {
        this.oprtime = oprtime;
    }

    public Date getOprtime()
    {
        return oprtime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("processid", getProcessid())
                .append("buyid", getBuyid())
                .append("custid", getCustid())
                .append("hourseid", getHourseid())
                .append("flowname", getFlowname())
                .append("flownode", getFlownode())
                .append("starttime", getStarttime())
                .append("finishtime", getFinishtime())
                .append("planmoney", getPlanmoney())
                .append("factmoney", getFactmoney())
                .append("orderid", getOrderid())
                .append("status", getStatus())
                .append("userid", getUserid())
                .append("oprtime", getOprtime())
                .toString();
    }
}
